package com.example.controller;

import com.alibaba.cloud.nacos.discovery.NacosServiceDiscovery;
import com.alibaba.nacos.api.exception.NacosException;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cloud.client.ServiceInstance;
import org.springframework.stereotype.Service;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.client.RestTemplate;

@RestController
public class ConsumerController {
    @Autowired
    private RestTemplate restTemplate;
    @Autowired
    private NacosServiceDiscovery serviceDiscovery;

    @GetMapping("/nacos/consumer/{str}")
    public String getService(@PathVariable("str") String str) throws NacosException{
        ServiceInstance serviceInstance =serviceDiscovery.getInstances("nacos-service-provider").get(0);
        String  url= serviceInstance.getHost() + ":" + serviceInstance.getPort();
        return restTemplate.getForObject("http://"+ url + "/nacos/service/" +str,String.class );
    }
}
